package com.course01.orderbackend.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@Slf4j
@RestController
public class LogTestController {

    @GetMapping("/test/log")
    public String testLog() {
        log.info("=== 日志系统测试开始 ===");
        log.debug("DEBUG日志 - 用户操作跟踪");
        log.info("INFO日志 - 业务操作记录");
        log.warn("WARN日志 - 潜在问题警告");
        log.error("ERROR日志 - 错误信息记录");

        // 模拟点餐系统业务日志
        log.info("用户扫码绑桌：桌号=A01, 用户ID=123");
        log.info("用户下单：订单号=ORDER001, 金额=158.00元");
        log.warn("库存警告：菜品宫保鸡丁库存不足");
        log.error("支付失败：订单号=ORDER001, 错误码=NETWORK_ERROR");

        log.info("=== 日志系统测试结束 ===");

        return "日志测试完成！请查看控制台和logs/目录下的日志文件";
    }

    @GetMapping("/test/exception")
    public String testException() {
        try {
            log.info("开始模拟异常场景");
            // 模拟业务异常
            throw new RuntimeException("模拟的业务异常：库存不足");
        } catch (Exception e) {
            log.error("业务处理异常", e);
            return "异常日志测试完成！";
        }
    }
}